{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "Handwritten_digit_generation_using_GAN.ipynb",
      "provenance": [],
      "collapsed_sections": [],
      "include_colab_link": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "accelerator": "GPU",
    "widgets": {
      "application/vnd.jupyter.widget-state+json": {
        "3c03a5f4f4554219aecd4ce257cf4e11": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "state": {
            "_view_name": "HBoxView",
            "_dom_classes": [],
            "_model_name": "HBoxModel",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "box_style": "",
            "layout": "IPY_MODEL_4f27e1e7e2604e0a9054b52205bbd9a8",
            "_model_module": "@jupyter-widgets/controls",
            "children": [
              "IPY_MODEL_857619683bd24bbcb0b503d9b63eafbd",
              "IPY_MODEL_ccc443795e744c008b8d225649108f4b"
            ]
          }
        },
        "4f27e1e7e2604e0a9054b52205bbd9a8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "857619683bd24bbcb0b503d9b63eafbd": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "state": {
            "_view_name": "ProgressView",
            "style": "IPY_MODEL_46992055967e4fe3bddb52431b01e5b4",
            "_dom_classes": [],
            "description": "",
            "_model_name": "FloatProgressModel",
            "bar_style": "info",
            "max": 1,
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": 1,
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "orientation": "horizontal",
            "min": 0,
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_31e501cd4e4d499a94a88ebf45da3b65"
          }
        },
        "ccc443795e744c008b8d225649108f4b": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "state": {
            "_view_name": "HTMLView",
            "style": "IPY_MODEL_4de9b6cfafce41388e0222a4389aa4c3",
            "_dom_classes": [],
            "description": "",
            "_model_name": "HTMLModel",
            "placeholder": "​",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": " 9920512/? [00:20&lt;00:00, 837167.06it/s]",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_ee6c21ba6a8a4401b85a6388515d5891"
          }
        },
        "46992055967e4fe3bddb52431b01e5b4": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "ProgressStyleModel",
            "description_width": "initial",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "bar_color": null,
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "31e501cd4e4d499a94a88ebf45da3b65": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "4de9b6cfafce41388e0222a4389aa4c3": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "DescriptionStyleModel",
            "description_width": "",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "ee6c21ba6a8a4401b85a6388515d5891": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "dd7b5f56812646e998bff1786e4b4493": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "state": {
            "_view_name": "HBoxView",
            "_dom_classes": [],
            "_model_name": "HBoxModel",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "box_style": "",
            "layout": "IPY_MODEL_b1a468fff5a448dd829cfb64ee4be2a6",
            "_model_module": "@jupyter-widgets/controls",
            "children": [
              "IPY_MODEL_c25265001c944071a64c6f9a2a0c76f3",
              "IPY_MODEL_76c282ff6b5241ffa4b92c781465ec9d"
            ]
          }
        },
        "b1a468fff5a448dd829cfb64ee4be2a6": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "c25265001c944071a64c6f9a2a0c76f3": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "state": {
            "_view_name": "ProgressView",
            "style": "IPY_MODEL_630c97142a0c41dea82b043a75fcba3f",
            "_dom_classes": [],
            "description": "",
            "_model_name": "FloatProgressModel",
            "bar_style": "success",
            "max": 1,
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": 1,
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "orientation": "horizontal",
            "min": 0,
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_ae5dd05c5f5c4b3b939780c117c931a8"
          }
        },
        "76c282ff6b5241ffa4b92c781465ec9d": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "state": {
            "_view_name": "HTMLView",
            "style": "IPY_MODEL_a5184bf4dddd447cae29cac1945eb609",
            "_dom_classes": [],
            "description": "",
            "_model_name": "HTMLModel",
            "placeholder": "​",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": " 32768/? [00:00&lt;00:00, 118069.33it/s]",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_5b8ce28d5cd64cc2bc5ef2c375e96dd4"
          }
        },
        "630c97142a0c41dea82b043a75fcba3f": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "ProgressStyleModel",
            "description_width": "initial",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "bar_color": null,
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "ae5dd05c5f5c4b3b939780c117c931a8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "a5184bf4dddd447cae29cac1945eb609": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "DescriptionStyleModel",
            "description_width": "",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "5b8ce28d5cd64cc2bc5ef2c375e96dd4": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "64a0afdfc8784130a09ed7fb06914543": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "state": {
            "_view_name": "HBoxView",
            "_dom_classes": [],
            "_model_name": "HBoxModel",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "box_style": "",
            "layout": "IPY_MODEL_049ff360c2714c57851caedf8758888c",
            "_model_module": "@jupyter-widgets/controls",
            "children": [
              "IPY_MODEL_3f2ea414e2534f298b8c9bbc637abab4",
              "IPY_MODEL_c2f686984f824f3992f4631a7c2e75a4"
            ]
          }
        },
        "049ff360c2714c57851caedf8758888c": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "3f2ea414e2534f298b8c9bbc637abab4": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "state": {
            "_view_name": "ProgressView",
            "style": "IPY_MODEL_e1f1e18a57bf4852ac3391dcd490b81a",
            "_dom_classes": [],
            "description": "",
            "_model_name": "FloatProgressModel",
            "bar_style": "info",
            "max": 1,
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": 1,
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "orientation": "horizontal",
            "min": 0,
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_d83f7248cc6648209203389da074937f"
          }
        },
        "c2f686984f824f3992f4631a7c2e75a4": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "state": {
            "_view_name": "HTMLView",
            "style": "IPY_MODEL_7ff3ce0d83304bac9c926fff17ef6b4e",
            "_dom_classes": [],
            "description": "",
            "_model_name": "HTMLModel",
            "placeholder": "​",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": " 1654784/? [00:18&lt;00:00, 529006.54it/s]",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_38b9cd35415f470cb545afe0e7afc9d0"
          }
        },
        "e1f1e18a57bf4852ac3391dcd490b81a": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "ProgressStyleModel",
            "description_width": "initial",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "bar_color": null,
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "d83f7248cc6648209203389da074937f": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "7ff3ce0d83304bac9c926fff17ef6b4e": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "DescriptionStyleModel",
            "description_width": "",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "38b9cd35415f470cb545afe0e7afc9d0": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "880e0b379a4546b2be474ed3c8237150": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "state": {
            "_view_name": "HBoxView",
            "_dom_classes": [],
            "_model_name": "HBoxModel",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "box_style": "",
            "layout": "IPY_MODEL_52fa50e8b63a4c2dadc15c201d04aa53",
            "_model_module": "@jupyter-widgets/controls",
            "children": [
              "IPY_MODEL_037913eb438a4c75b5fdcd9329a8b491",
              "IPY_MODEL_82b047620ea04b2dae946e95d73b1072"
            ]
          }
        },
        "52fa50e8b63a4c2dadc15c201d04aa53": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "037913eb438a4c75b5fdcd9329a8b491": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "state": {
            "_view_name": "ProgressView",
            "style": "IPY_MODEL_01c2b4d72feb4e06a084500efc4e48d3",
            "_dom_classes": [],
            "description": "",
            "_model_name": "FloatProgressModel",
            "bar_style": "success",
            "max": 1,
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": 1,
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "orientation": "horizontal",
            "min": 0,
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_0c6ccc57d26a49278163d29cb6438b83"
          }
        },
        "82b047620ea04b2dae946e95d73b1072": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "state": {
            "_view_name": "HTMLView",
            "style": "IPY_MODEL_e2aeabc9e02549c7b5ab77a96842ca9f",
            "_dom_classes": [],
            "description": "",
            "_model_name": "HTMLModel",
            "placeholder": "​",
            "_view_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "value": " 8192/? [00:03&lt;00:00, 2513.77it/s]",
            "_view_count": null,
            "_view_module_version": "1.5.0",
            "description_tooltip": null,
            "_model_module": "@jupyter-widgets/controls",
            "layout": "IPY_MODEL_8eb63816732a4c1ca79497e6910d8e31"
          }
        },
        "01c2b4d72feb4e06a084500efc4e48d3": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "ProgressStyleModel",
            "description_width": "initial",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "bar_color": null,
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "0c6ccc57d26a49278163d29cb6438b83": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        },
        "e2aeabc9e02549c7b5ab77a96842ca9f": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "state": {
            "_view_name": "StyleView",
            "_model_name": "DescriptionStyleModel",
            "description_width": "",
            "_view_module": "@jupyter-widgets/base",
            "_model_module_version": "1.5.0",
            "_view_count": null,
            "_view_module_version": "1.2.0",
            "_model_module": "@jupyter-widgets/controls"
          }
        },
        "8eb63816732a4c1ca79497e6910d8e31": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "state": {
            "_view_name": "LayoutView",
            "grid_template_rows": null,
            "right": null,
            "justify_content": null,
            "_view_module": "@jupyter-widgets/base",
            "overflow": null,
            "_model_module_version": "1.2.0",
            "_view_count": null,
            "flex_flow": null,
            "width": null,
            "min_width": null,
            "border": null,
            "align_items": null,
            "bottom": null,
            "_model_module": "@jupyter-widgets/base",
            "top": null,
            "grid_column": null,
            "overflow_y": null,
            "overflow_x": null,
            "grid_auto_flow": null,
            "grid_area": null,
            "grid_template_columns": null,
            "flex": null,
            "_model_name": "LayoutModel",
            "justify_items": null,
            "grid_row": null,
            "max_height": null,
            "align_content": null,
            "visibility": null,
            "align_self": null,
            "height": null,
            "min_height": null,
            "padding": null,
            "grid_auto_rows": null,
            "grid_gap": null,
            "max_width": null,
            "order": null,
            "_view_module_version": "1.2.0",
            "grid_template_areas": null,
            "object_position": null,
            "object_fit": null,
            "grid_auto_columns": null,
            "margin": null,
            "display": null,
            "left": null
          }
        }
      }
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "view-in-github",
        "colab_type": "text"
      },
      "source": [
        "<a href=\"https://colab.research.google.com/github/PacktPublishing/Modern-Computer-Vision-with-PyTorch/blob/master/Chapter12/Handwritten_digit_generation_using_GAN.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "0AfaQVORthOv",
        "outputId": "52a36089-695f-4180-957f-f4e97816fa2f",
        "colab": {
          "base_uri": "https://localhost:8080/"
        }
      },
      "source": [
        "!pip install -q torch_snippets\n",
        "from torch_snippets import *\n",
        "device = \"cuda\" if torch.cuda.is_available() else \"cpu\"\n",
        "from torchvision.utils import make_grid"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "\u001b[K     |████████████████████████████████| 36.7MB 81kB/s \n",
            "\u001b[K     |████████████████████████████████| 61kB 8.7MB/s \n",
            "\u001b[K     |████████████████████████████████| 102kB 13.2MB/s \n",
            "\u001b[?25h  Building wheel for contextvars (setup.py) ... \u001b[?25l\u001b[?25hdone\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "eEnnjqoNtllk",
        "outputId": "25be10c5-3790-438f-8c45-e5a4612a0311",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 386,
          "referenced_widgets": [
            "3c03a5f4f4554219aecd4ce257cf4e11",
            "4f27e1e7e2604e0a9054b52205bbd9a8",
            "857619683bd24bbcb0b503d9b63eafbd",
            "ccc443795e744c008b8d225649108f4b",
            "46992055967e4fe3bddb52431b01e5b4",
            "31e501cd4e4d499a94a88ebf45da3b65",
            "4de9b6cfafce41388e0222a4389aa4c3",
            "ee6c21ba6a8a4401b85a6388515d5891",
            "dd7b5f56812646e998bff1786e4b4493",
            "b1a468fff5a448dd829cfb64ee4be2a6",
            "c25265001c944071a64c6f9a2a0c76f3",
            "76c282ff6b5241ffa4b92c781465ec9d",
            "630c97142a0c41dea82b043a75fcba3f",
            "ae5dd05c5f5c4b3b939780c117c931a8",
            "a5184bf4dddd447cae29cac1945eb609",
            "5b8ce28d5cd64cc2bc5ef2c375e96dd4",
            "64a0afdfc8784130a09ed7fb06914543",
            "049ff360c2714c57851caedf8758888c",
            "3f2ea414e2534f298b8c9bbc637abab4",
            "c2f686984f824f3992f4631a7c2e75a4",
            "e1f1e18a57bf4852ac3391dcd490b81a",
            "d83f7248cc6648209203389da074937f",
            "7ff3ce0d83304bac9c926fff17ef6b4e",
            "38b9cd35415f470cb545afe0e7afc9d0",
            "880e0b379a4546b2be474ed3c8237150",
            "52fa50e8b63a4c2dadc15c201d04aa53",
            "037913eb438a4c75b5fdcd9329a8b491",
            "82b047620ea04b2dae946e95d73b1072",
            "01c2b4d72feb4e06a084500efc4e48d3",
            "0c6ccc57d26a49278163d29cb6438b83",
            "e2aeabc9e02549c7b5ab77a96842ca9f",
            "8eb63816732a4c1ca79497e6910d8e31"
          ]
        }
      },
      "source": [
        "from torchvision.datasets import MNIST\n",
        "from torchvision import transforms\n",
        "\n",
        "transform = transforms.Compose([\n",
        "        transforms.ToTensor(),\n",
        "        transforms.Normalize(mean=(0.5,), std=(0.5,))\n",
        "])\n",
        "\n",
        "data_loader = torch.utils.data.DataLoader(MNIST('~/data', train=True, download=True, transform=transform),batch_size=128, shuffle=True, drop_last=True)"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Downloading http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz to /root/data/MNIST/raw/train-images-idx3-ubyte.gz\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "display_data",
          "data": {
            "application/vnd.jupyter.widget-view+json": {
              "model_id": "3c03a5f4f4554219aecd4ce257cf4e11",
              "version_minor": 0,
              "version_major": 2
            },
            "text/plain": [
              "HBox(children=(FloatProgress(value=1.0, bar_style='info', max=1.0), HTML(value='')))"
            ]
          },
          "metadata": {
            "tags": []
          }
        },
        {
          "output_type": "stream",
          "text": [
            "Extracting /root/data/MNIST/raw/train-images-idx3-ubyte.gz to /root/data/MNIST/raw\n",
            "Downloading http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz to /root/data/MNIST/raw/train-labels-idx1-ubyte.gz\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "display_data",
          "data": {
            "application/vnd.jupyter.widget-view+json": {
              "model_id": "dd7b5f56812646e998bff1786e4b4493",
              "version_minor": 0,
              "version_major": 2
            },
            "text/plain": [
              "HBox(children=(FloatProgress(value=1.0, bar_style='info', max=1.0), HTML(value='')))"
            ]
          },
          "metadata": {
            "tags": []
          }
        },
        {
          "output_type": "stream",
          "text": [
            "Extracting /root/data/MNIST/raw/train-labels-idx1-ubyte.gz to /root/data/MNIST/raw\n",
            "Downloading http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz to /root/data/MNIST/raw/t10k-images-idx3-ubyte.gz\n",
            "\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "display_data",
          "data": {
            "application/vnd.jupyter.widget-view+json": {
              "model_id": "64a0afdfc8784130a09ed7fb06914543",
              "version_minor": 0,
              "version_major": 2
            },
            "text/plain": [
              "HBox(children=(FloatProgress(value=1.0, bar_style='info', max=1.0), HTML(value='')))"
            ]
          },
          "metadata": {
            "tags": []
          }
        },
        {
          "output_type": "stream",
          "text": [
            "Extracting /root/data/MNIST/raw/t10k-images-idx3-ubyte.gz to /root/data/MNIST/raw\n",
            "Downloading http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz to /root/data/MNIST/raw/t10k-labels-idx1-ubyte.gz\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "display_data",
          "data": {
            "application/vnd.jupyter.widget-view+json": {
              "model_id": "880e0b379a4546b2be474ed3c8237150",
              "version_minor": 0,
              "version_major": 2
            },
            "text/plain": [
              "HBox(children=(FloatProgress(value=1.0, bar_style='info', max=1.0), HTML(value='')))"
            ]
          },
          "metadata": {
            "tags": []
          }
        },
        {
          "output_type": "stream",
          "text": [
            "Extracting /root/data/MNIST/raw/t10k-labels-idx1-ubyte.gz to /root/data/MNIST/raw\n",
            "Processing...\n",
            "Done!\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/torchvision/datasets/mnist.py:480: UserWarning: The given NumPy array is not writeable, and PyTorch does not support non-writeable tensors. This means you can write to the underlying (supposedly non-writeable) NumPy array using the tensor. You may want to copy the array to protect its data or make it writeable before converting it to a tensor. This type of warning will be suppressed for the rest of this program. (Triggered internally at  /pytorch/torch/csrc/utils/tensor_numpy.cpp:141.)\n",
            "  return torch.from_numpy(parsed.astype(m[2], copy=False)).view(*s)\n"
          ],
          "name": "stderr"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "CQJY5j82tniL"
      },
      "source": [
        "class Discriminator(nn.Module):\n",
        "    def __init__(self):\n",
        "        super().__init__()\n",
        "        self.model = nn.Sequential( \n",
        "            nn.Linear(784, 1024),\n",
        "            nn.LeakyReLU(0.2),\n",
        "            nn.Dropout(0.3),\n",
        "            nn.Linear(1024, 512),\n",
        "            nn.LeakyReLU(0.2),\n",
        "            nn.Dropout(0.3),\n",
        "            nn.Linear(512, 256),\n",
        "            nn.LeakyReLU(0.2),\n",
        "            nn.Dropout(0.3),\n",
        "            nn.Linear(256, 1),\n",
        "            nn.Sigmoid()\n",
        "        )\n",
        "    def forward(self, x): return self.model(x)"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "oIxkSbbOtpgs",
        "outputId": "ec1580d3-11a9-411b-a606-0a9b43bb9ed3",
        "colab": {
          "base_uri": "https://localhost:8080/"
        }
      },
      "source": [
        "!pip install torch_summary\n",
        "from torchsummary import summary\n",
        "discriminator = Discriminator().to(device)\n",
        "summary(discriminator,torch.zeros(1,784))"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Requirement already satisfied: torch_summary in /usr/local/lib/python3.6/dist-packages (1.4.3)\n",
            "==========================================================================================\n",
            "Layer (type:depth-idx)                   Output Shape              Param #\n",
            "==========================================================================================\n",
            "├─Sequential: 1-1                        [-1, 1]                   --\n",
            "|    └─Linear: 2-1                       [-1, 1024]                803,840\n",
            "|    └─LeakyReLU: 2-2                    [-1, 1024]                --\n",
            "|    └─Dropout: 2-3                      [-1, 1024]                --\n",
            "|    └─Linear: 2-4                       [-1, 512]                 524,800\n",
            "|    └─LeakyReLU: 2-5                    [-1, 512]                 --\n",
            "|    └─Dropout: 2-6                      [-1, 512]                 --\n",
            "|    └─Linear: 2-7                       [-1, 256]                 131,328\n",
            "|    └─LeakyReLU: 2-8                    [-1, 256]                 --\n",
            "|    └─Dropout: 2-9                      [-1, 256]                 --\n",
            "|    └─Linear: 2-10                      [-1, 1]                   257\n",
            "|    └─Sigmoid: 2-11                     [-1, 1]                   --\n",
            "==========================================================================================\n",
            "Total params: 1,460,225\n",
            "Trainable params: 1,460,225\n",
            "Non-trainable params: 0\n",
            "Total mult-adds (M): 2.92\n",
            "==========================================================================================\n",
            "Input size (MB): 0.00\n",
            "Forward/backward pass size (MB): 0.01\n",
            "Params size (MB): 5.57\n",
            "Estimated Total Size (MB): 5.59\n",
            "==========================================================================================\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "==========================================================================================\n",
              "Layer (type:depth-idx)                   Output Shape              Param #\n",
              "==========================================================================================\n",
              "├─Sequential: 1-1                        [-1, 1]                   --\n",
              "|    └─Linear: 2-1                       [-1, 1024]                803,840\n",
              "|    └─LeakyReLU: 2-2                    [-1, 1024]                --\n",
              "|    └─Dropout: 2-3                      [-1, 1024]                --\n",
              "|    └─Linear: 2-4                       [-1, 512]                 524,800\n",
              "|    └─LeakyReLU: 2-5                    [-1, 512]                 --\n",
              "|    └─Dropout: 2-6                      [-1, 512]                 --\n",
              "|    └─Linear: 2-7                       [-1, 256]                 131,328\n",
              "|    └─LeakyReLU: 2-8                    [-1, 256]                 --\n",
              "|    └─Dropout: 2-9                      [-1, 256]                 --\n",
              "|    └─Linear: 2-10                      [-1, 1]                   257\n",
              "|    └─Sigmoid: 2-11                     [-1, 1]                   --\n",
              "==========================================================================================\n",
              "Total params: 1,460,225\n",
              "Trainable params: 1,460,225\n",
              "Non-trainable params: 0\n",
              "Total mult-adds (M): 2.92\n",
              "==========================================================================================\n",
              "Input size (MB): 0.00\n",
              "Forward/backward pass size (MB): 0.01\n",
              "Params size (MB): 5.57\n",
              "Estimated Total Size (MB): 5.59\n",
              "=========================================================================================="
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 14
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "UCZyoOkktrJa"
      },
      "source": [
        "class Generator(nn.Module):\n",
        "    def __init__(self):\n",
        "        super().__init__()\n",
        "        self.model = nn.Sequential(\n",
        "            nn.Linear(100, 256),\n",
        "            nn.LeakyReLU(0.2),\n",
        "            nn.Linear(256, 512),\n",
        "            nn.LeakyReLU(0.2),\n",
        "            nn.Linear(512, 1024),\n",
        "            nn.LeakyReLU(0.2),\n",
        "            nn.Linear(1024, 784),\n",
        "            nn.Tanh()\n",
        "        )\n",
        "\n",
        "    def forward(self, x): return self.model(x)"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "_BF-3N0uttBE",
        "outputId": "e2f7f709-d524-4768-d677-70a2c67f7614",
        "colab": {
          "base_uri": "https://localhost:8080/"
        }
      },
      "source": [
        "generator = Generator().to(device)\n",
        "summary(generator,torch.zeros(1,100))"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "==========================================================================================\n",
            "Layer (type:depth-idx)                   Output Shape              Param #\n",
            "==========================================================================================\n",
            "├─Sequential: 1-1                        [-1, 784]                 --\n",
            "|    └─Linear: 2-1                       [-1, 256]                 25,856\n",
            "|    └─LeakyReLU: 2-2                    [-1, 256]                 --\n",
            "|    └─Linear: 2-3                       [-1, 512]                 131,584\n",
            "|    └─LeakyReLU: 2-4                    [-1, 512]                 --\n",
            "|    └─Linear: 2-5                       [-1, 1024]                525,312\n",
            "|    └─LeakyReLU: 2-6                    [-1, 1024]                --\n",
            "|    └─Linear: 2-7                       [-1, 784]                 803,600\n",
            "|    └─Tanh: 2-8                         [-1, 784]                 --\n",
            "==========================================================================================\n",
            "Total params: 1,486,352\n",
            "Trainable params: 1,486,352\n",
            "Non-trainable params: 0\n",
            "Total mult-adds (M): 2.97\n",
            "==========================================================================================\n",
            "Input size (MB): 0.00\n",
            "Forward/backward pass size (MB): 0.02\n",
            "Params size (MB): 5.67\n",
            "Estimated Total Size (MB): 5.69\n",
            "==========================================================================================\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "==========================================================================================\n",
              "Layer (type:depth-idx)                   Output Shape              Param #\n",
              "==========================================================================================\n",
              "├─Sequential: 1-1                        [-1, 784]                 --\n",
              "|    └─Linear: 2-1                       [-1, 256]                 25,856\n",
              "|    └─LeakyReLU: 2-2                    [-1, 256]                 --\n",
              "|    └─Linear: 2-3                       [-1, 512]                 131,584\n",
              "|    └─LeakyReLU: 2-4                    [-1, 512]                 --\n",
              "|    └─Linear: 2-5                       [-1, 1024]                525,312\n",
              "|    └─LeakyReLU: 2-6                    [-1, 1024]                --\n",
              "|    └─Linear: 2-7                       [-1, 784]                 803,600\n",
              "|    └─Tanh: 2-8                         [-1, 784]                 --\n",
              "==========================================================================================\n",
              "Total params: 1,486,352\n",
              "Trainable params: 1,486,352\n",
              "Non-trainable params: 0\n",
              "Total mult-adds (M): 2.97\n",
              "==========================================================================================\n",
              "Input size (MB): 0.00\n",
              "Forward/backward pass size (MB): 0.02\n",
              "Params size (MB): 5.67\n",
              "Estimated Total Size (MB): 5.69\n",
              "=========================================================================================="
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 16
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "edES5gU2tvUC"
      },
      "source": [
        "def noise(size):\n",
        "    n = torch.randn(size, 100)\n",
        "    return n.to(device)"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "pTcDOPpytw-D"
      },
      "source": [
        "def discriminator_train_step(real_data, fake_data):\n",
        "    d_optimizer.zero_grad()\n",
        "    prediction_real = discriminator(real_data)\n",
        "    error_real = loss(prediction_real, torch.ones(len(real_data), 1).to(device))\n",
        "    error_real.backward()\n",
        "    prediction_fake = discriminator(fake_data)\n",
        "    error_fake = loss(prediction_fake, torch.zeros(len(fake_data), 1).to(device))\n",
        "    error_fake.backward()\n",
        "    d_optimizer.step()\n",
        "    return error_real + error_fake"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "xu1Vhtz1t4tS"
      },
      "source": [
        "def generator_train_step(fake_data):\n",
        "    g_optimizer.zero_grad()\n",
        "    prediction = discriminator(fake_data)\n",
        "    error = loss(prediction, torch.ones(len(real_data), 1).to(device))\n",
        "    error.backward()\n",
        "    g_optimizer.step()\n",
        "    return error"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "CAeSZ7u3uAPf"
      },
      "source": [
        "discriminator = Discriminator().to(device)\n",
        "generator = Generator().to(device)\n",
        "d_optimizer = optim.Adam(discriminator.parameters(), lr=0.0002)\n",
        "g_optimizer = optim.Adam(generator.parameters(), lr=0.0002)\n",
        "loss = nn.BCELoss()\n",
        "num_epochs = 200\n",
        "log = Report(num_epochs)"
      ],
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "7fukw3zFuCr8",
        "outputId": "e8ff0b25-a05b-4b93-bc81-497c47c36ddb",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "for epoch in range(num_epochs):\n",
        "    N = len(data_loader)\n",
        "    for i, (images, _) in enumerate(data_loader):\n",
        "        real_data = images.view(len(images), -1).to(device)\n",
        "        fake_data = generator(noise(len(real_data))).to(device)\n",
        "        fake_data = fake_data.detach()\n",
        "        d_loss = discriminator_train_step(real_data, fake_data)\n",
        "        fake_data = generator(noise(len(real_data))).to(device)\n",
        "        g_loss = generator_train_step(fake_data)\n",
        "        log.record(epoch+(1+i)/N, d_loss=d_loss.item(), g_loss=g_loss.item(), end='\\r')\n",
        "    log.report_avgs(epoch+1)\n",
        "log.plot_epochs(['d_loss', 'g_loss'])"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "EPOCH: 1.000\td_loss: 0.839\tg_loss: 3.254\t(14.88s - 2960.95s remaining)\n",
            "EPOCH: 2.000\td_loss: 0.786\tg_loss: 4.338\t(27.37s - 2709.66s remaining)\n",
            "EPOCH: 3.000\td_loss: 0.915\tg_loss: 2.351\t(40.28s - 2644.75s remaining)\n",
            "EPOCH: 4.000\td_loss: 0.810\tg_loss: 2.462\t(52.94s - 2594.29s remaining)\n",
            "EPOCH: 5.000\td_loss: 0.679\tg_loss: 2.651\t(65.44s - 2552.31s remaining)\n",
            "EPOCH: 6.000\td_loss: 0.333\tg_loss: 3.991\t(78.65s - 2543.15s remaining)\n",
            "EPOCH: 7.000\td_loss: 0.444\tg_loss: 3.567\t(92.02s - 2537.07s remaining)\n",
            "EPOCH: 8.000\td_loss: 0.454\tg_loss: 3.225\t(104.66s - 2511.72s remaining)\n",
            "EPOCH: 9.000\td_loss: 0.494\tg_loss: 2.993\t(118.02s - 2504.74s remaining)\n",
            "EPOCH: 10.000\td_loss: 0.530\tg_loss: 2.856\t(130.87s - 2486.59s remaining)\n",
            "EPOCH: 11.000\td_loss: 0.477\tg_loss: 2.913\t(143.87s - 2471.88s remaining)\n",
            "EPOCH: 12.000\td_loss: 0.496\tg_loss: 2.963\t(156.28s - 2448.38s remaining)\n",
            "EPOCH: 13.000\td_loss: 0.541\tg_loss: 2.702\t(169.04s - 2431.55s remaining)\n",
            "EPOCH: 14.000\td_loss: 0.655\tg_loss: 2.362\t(181.85s - 2415.95s remaining)\n",
            "EPOCH: 15.000\td_loss: 0.659\tg_loss: 2.362\t(194.41s - 2397.70s remaining)\n",
            "EPOCH: 16.000\td_loss: 0.667\tg_loss: 2.316\t(206.99s - 2380.38s remaining)\n",
            "EPOCH: 17.000\td_loss: 0.701\tg_loss: 2.160\t(219.70s - 2365.04s remaining)\n",
            "EPOCH: 18.000\td_loss: 0.680\tg_loss: 2.165\t(232.28s - 2348.66s remaining)\n",
            "EPOCH: 19.000\td_loss: 0.731\tg_loss: 2.103\t(245.18s - 2335.64s remaining)\n",
            "EPOCH: 20.000\td_loss: 0.745\tg_loss: 2.059\t(258.06s - 2322.58s remaining)\n",
            "EPOCH: 21.000\td_loss: 0.820\tg_loss: 1.865\t(271.10s - 2310.83s remaining)\n",
            "EPOCH: 22.000\td_loss: 0.853\tg_loss: 1.761\t(283.77s - 2295.94s remaining)\n",
            "EPOCH: 23.000\td_loss: 0.781\tg_loss: 1.954\t(296.40s - 2280.98s remaining)\n",
            "EPOCH: 24.000\td_loss: 0.805\tg_loss: 1.933\t(309.01s - 2266.06s remaining)\n",
            "EPOCH: 25.000\td_loss: 0.828\tg_loss: 1.914\t(321.43s - 2250.02s remaining)\n",
            "EPOCH: 26.000\td_loss: 0.804\tg_loss: 1.906\t(334.11s - 2235.97s remaining)\n",
            "EPOCH: 27.000\td_loss: 0.837\tg_loss: 1.788\t(347.03s - 2223.54s remaining)\n",
            "EPOCH: 28.000\td_loss: 0.811\tg_loss: 1.838\t(359.27s - 2206.95s remaining)\n",
            "EPOCH: 29.000\td_loss: 0.858\tg_loss: 1.763\t(372.05s - 2193.79s remaining)\n",
            "EPOCH: 30.000\td_loss: 0.882\tg_loss: 1.684\t(384.63s - 2179.56s remaining)\n",
            "EPOCH: 31.000\td_loss: 0.928\tg_loss: 1.574\t(397.68s - 2167.99s remaining)\n",
            "EPOCH: 32.000\td_loss: 0.920\tg_loss: 1.598\t(410.50s - 2155.14s remaining)\n",
            "EPOCH: 33.000\td_loss: 0.936\tg_loss: 1.562\t(423.38s - 2142.54s remaining)\n",
            "EPOCH: 34.000\td_loss: 0.952\tg_loss: 1.535\t(436.11s - 2129.23s remaining)\n",
            "EPOCH: 35.000\td_loss: 0.969\tg_loss: 1.474\t(449.16s - 2117.47s remaining)\n",
            "EPOCH: 36.000\td_loss: 0.975\tg_loss: 1.480\t(462.00s - 2104.67s remaining)\n",
            "EPOCH: 37.000\td_loss: 1.000\tg_loss: 1.418\t(474.62s - 2090.87s remaining)\n",
            "EPOCH: 38.000\td_loss: 0.999\tg_loss: 1.442\t(486.77s - 2075.18s remaining)\n",
            "EPOCH: 39.000\td_loss: 1.018\tg_loss: 1.404\t(499.91s - 2063.75s remaining)\n",
            "EPOCH: 40.000\td_loss: 1.032\tg_loss: 1.379\t(512.46s - 2049.83s remaining)\n",
            "EPOCH: 41.000\td_loss: 1.029\tg_loss: 1.346\t(524.71s - 2034.84s remaining)\n",
            "EPOCH: 42.000\td_loss: 1.038\tg_loss: 1.333\t(537.49s - 2022.00s remaining)\n",
            "EPOCH: 43.000\td_loss: 1.041\tg_loss: 1.344\t(550.13s - 2008.62s remaining)\n",
            "EPOCH: 44.000\td_loss: 1.052\tg_loss: 1.308\t(563.33s - 1997.25s remaining)\n",
            "EPOCH: 45.000\td_loss: 1.071\tg_loss: 1.281\t(575.70s - 1982.98s remaining)\n",
            "EPOCH: 46.000\td_loss: 1.060\tg_loss: 1.302\t(588.65s - 1970.69s remaining)\n",
            "EPOCH: 47.000\td_loss: 1.064\tg_loss: 1.302\t(601.14s - 1956.90s remaining)\n",
            "EPOCH: 48.000\td_loss: 1.075\tg_loss: 1.259\t(613.72s - 1943.45s remaining)\n",
            "EPOCH: 49.000\td_loss: 1.106\tg_loss: 1.215\t(626.47s - 1930.55s remaining)\n",
            "EPOCH: 50.000\td_loss: 1.112\tg_loss: 1.184\t(638.79s - 1916.38s remaining)\n",
            "EPOCH: 51.000\td_loss: 1.115\tg_loss: 1.175\t(651.77s - 1904.20s remaining)\n",
            "EPOCH: 52.000\td_loss: 1.119\tg_loss: 1.177\t(664.13s - 1890.21s remaining)\n",
            "EPOCH: 53.000\td_loss: 1.121\tg_loss: 1.179\t(676.57s - 1876.53s remaining)\n",
            "EPOCH: 54.000\td_loss: 1.108\tg_loss: 1.196\t(689.72s - 1864.81s remaining)\n",
            "EPOCH: 55.000\td_loss: 1.112\tg_loss: 1.205\t(702.57s - 1852.22s remaining)\n",
            "EPOCH: 56.000\td_loss: 1.104\tg_loss: 1.214\t(715.56s - 1840.02s remaining)\n",
            "EPOCH: 57.000\td_loss: 1.134\tg_loss: 1.147\t(728.13s - 1826.72s remaining)\n",
            "EPOCH: 58.000\td_loss: 1.143\tg_loss: 1.124\t(740.25s - 1812.34s remaining)\n",
            "EPOCH: 59.000\td_loss: 1.138\tg_loss: 1.136\t(752.99s - 1799.53s remaining)\n",
            "EPOCH: 60.000\td_loss: 1.151\tg_loss: 1.114\t(766.41s - 1788.28s remaining)\n",
            "EPOCH: 61.000\td_loss: 1.157\tg_loss: 1.103\t(780.01s - 1777.41s remaining)\n",
            "EPOCH: 62.000\td_loss: 1.149\tg_loss: 1.116\t(793.34s - 1765.81s remaining)\n",
            "EPOCH: 63.000\td_loss: 1.150\tg_loss: 1.115\t(806.27s - 1753.32s remaining)\n",
            "EPOCH: 64.000\td_loss: 1.156\tg_loss: 1.108\t(818.97s - 1740.31s remaining)\n",
            "EPOCH: 65.000\td_loss: 1.148\tg_loss: 1.135\t(831.50s - 1726.95s remaining)\n",
            "EPOCH: 66.000\td_loss: 1.149\tg_loss: 1.122\t(843.93s - 1713.43s remaining)\n",
            "EPOCH: 67.000\td_loss: 1.156\tg_loss: 1.123\t(857.07s - 1701.34s remaining)\n",
            "EPOCH: 68.000\td_loss: 1.145\tg_loss: 1.115\t(869.75s - 1688.33s remaining)\n",
            "EPOCH: 69.000\td_loss: 1.159\tg_loss: 1.095\t(882.44s - 1675.36s remaining)\n",
            "EPOCH: 70.000\td_loss: 1.178\tg_loss: 1.070\t(894.98s - 1662.10s remaining)\n",
            "EPOCH: 71.000\td_loss: 1.170\tg_loss: 1.074\t(907.33s - 1648.53s remaining)\n",
            "EPOCH: 72.000\td_loss: 1.187\tg_loss: 1.049\t(919.78s - 1635.17s remaining)\n",
            "EPOCH: 73.000\td_loss: 1.189\tg_loss: 1.045\t(932.45s - 1622.20s remaining)\n",
            "EPOCH: 74.000\td_loss: 1.187\tg_loss: 1.056\t(945.63s - 1610.12s remaining)\n",
            "EPOCH: 75.000\td_loss: 1.181\tg_loss: 1.069\t(959.24s - 1598.73s remaining)\n",
            "EPOCH: 76.000\td_loss: 1.179\tg_loss: 1.049\t(972.26s - 1586.31s remaining)\n",
            "EPOCH: 77.000\td_loss: 1.194\tg_loss: 1.048\t(984.91s - 1573.30s remaining)\n",
            "EPOCH: 78.000\td_loss: 1.200\tg_loss: 1.033\t(997.68s - 1560.48s remaining)\n",
            "EPOCH: 79.000\td_loss: 1.194\tg_loss: 1.036\t(1010.18s - 1547.24s remaining)\n",
            "EPOCH: 80.000\td_loss: 1.196\tg_loss: 1.034\t(1023.43s - 1535.15s remaining)\n",
            "EPOCH: 81.000\td_loss: 1.199\tg_loss: 1.028\t(1036.71s - 1523.07s remaining)\n",
            "EPOCH: 82.000\td_loss: 1.195\tg_loss: 1.033\t(1049.94s - 1510.89s remaining)\n",
            "EPOCH: 83.000\td_loss: 1.202\tg_loss: 1.025\t(1063.00s - 1498.44s remaining)\n",
            "EPOCH: 84.000\td_loss: 1.200\tg_loss: 1.020\t(1076.17s - 1486.14s remaining)\n",
            "EPOCH: 85.000\td_loss: 1.201\tg_loss: 1.016\t(1088.91s - 1473.23s remaining)\n",
            "EPOCH: 86.000\td_loss: 1.209\tg_loss: 1.014\t(1101.26s - 1459.81s remaining)\n",
            "EPOCH: 87.000\td_loss: 1.209\tg_loss: 1.009\t(1114.89s - 1448.08s remaining)\n",
            "EPOCH: 88.000\td_loss: 1.211\tg_loss: 1.004\t(1127.54s - 1435.06s remaining)\n",
            "EPOCH: 89.000\td_loss: 1.217\tg_loss: 1.001\t(1139.91s - 1421.68s remaining)\n",
            "EPOCH: 90.000\td_loss: 1.194\tg_loss: 1.035\t(1152.62s - 1408.76s remaining)\n",
            "EPOCH: 91.000\td_loss: 1.210\tg_loss: 1.010\t(1165.60s - 1396.15s remaining)\n",
            "EPOCH: 92.000\td_loss: 1.217\tg_loss: 0.989\t(1178.52s - 1383.47s remaining)\n",
            "EPOCH: 93.000\td_loss: 1.221\tg_loss: 0.994\t(1191.82s - 1371.23s remaining)\n",
            "EPOCH: 94.000\td_loss: 1.217\tg_loss: 0.999\t(1204.47s - 1358.23s remaining)\n",
            "EPOCH: 95.000\td_loss: 1.220\tg_loss: 0.988\t(1217.05s - 1345.16s remaining)\n",
            "EPOCH: 96.000\td_loss: 1.222\tg_loss: 0.980\t(1229.63s - 1332.10s remaining)\n",
            "EPOCH: 97.000\td_loss: 1.212\tg_loss: 1.004\t(1243.06s - 1319.95s remaining)\n",
            "EPOCH: 98.000\td_loss: 1.215\tg_loss: 0.997\t(1256.17s - 1307.44s remaining)\n",
            "EPOCH: 99.000\td_loss: 1.230\tg_loss: 0.971\t(1268.61s - 1294.23s remaining)\n",
            "EPOCH: 100.000\td_loss: 1.218\tg_loss: 0.994\t(1281.10s - 1281.10s remaining)\n",
            "EPOCH: 101.000\td_loss: 1.222\tg_loss: 0.986\t(1293.43s - 1267.82s remaining)\n",
            "EPOCH: 102.000\td_loss: 1.229\tg_loss: 0.973\t(1306.13s - 1254.91s remaining)\n",
            "EPOCH: 103.000\td_loss: 1.223\tg_loss: 0.980\t(1319.25s - 1242.40s remaining)\n",
            "EPOCH: 104.000\td_loss: 1.222\tg_loss: 0.999\t(1332.81s - 1230.29s remaining)\n",
            "EPOCH: 105.000\td_loss: 1.222\tg_loss: 0.979\t(1346.31s - 1218.09s remaining)\n",
            "EPOCH: 106.000\td_loss: 1.234\tg_loss: 0.961\t(1359.16s - 1205.29s remaining)\n",
            "EPOCH: 107.000\td_loss: 1.231\tg_loss: 0.979\t(1372.86s - 1193.24s remaining)\n",
            "EPOCH: 108.000\td_loss: 1.236\tg_loss: 0.954\t(1386.20s - 1180.84s remaining)\n",
            "EPOCH: 109.000\td_loss: 1.246\tg_loss: 0.949\t(1399.69s - 1168.55s remaining)\n",
            "EPOCH: 110.000\td_loss: 1.246\tg_loss: 0.934\t(1413.41s - 1156.42s remaining)\n",
            "EPOCH: 111.000\td_loss: 1.241\tg_loss: 0.966\t(1427.00s - 1144.17s remaining)\n",
            "EPOCH: 112.000\td_loss: 1.237\tg_loss: 0.965\t(1440.03s - 1131.45s remaining)\n",
            "EPOCH: 113.000\td_loss: 1.240\tg_loss: 0.959\t(1453.07s - 1118.74s remaining)\n",
            "EPOCH: 114.000\td_loss: 1.245\tg_loss: 0.944\t(1466.09s - 1106.00s remaining)\n",
            "EPOCH: 115.000\td_loss: 1.241\tg_loss: 0.965\t(1479.53s - 1093.56s remaining)\n",
            "EPOCH: 116.000\td_loss: 1.242\tg_loss: 0.954\t(1493.15s - 1081.25s remaining)\n",
            "EPOCH: 117.000\td_loss: 1.247\tg_loss: 0.946\t(1506.42s - 1068.66s remaining)\n",
            "EPOCH: 118.000\td_loss: 1.247\tg_loss: 0.926\t(1519.91s - 1056.21s remaining)\n",
            "EPOCH: 119.000\td_loss: 1.251\tg_loss: 0.935\t(1533.72s - 1043.96s remaining)\n",
            "EPOCH: 120.000\td_loss: 1.248\tg_loss: 0.941\t(1547.61s - 1031.74s remaining)\n",
            "EPOCH: 121.000\td_loss: 1.245\tg_loss: 0.955\t(1561.19s - 1019.29s remaining)\n",
            "EPOCH: 122.000\td_loss: 1.249\tg_loss: 0.950\t(1574.56s - 1006.69s remaining)\n",
            "EPOCH: 123.000\td_loss: 1.247\tg_loss: 0.944\t(1587.89s - 994.05s remaining)\n",
            "EPOCH: 124.000\td_loss: 1.238\tg_loss: 0.956\t(1601.54s - 981.59s remaining)\n",
            "EPOCH: 125.000\td_loss: 1.251\tg_loss: 0.941\t(1615.39s - 969.23s remaining)\n",
            "EPOCH: 126.000\td_loss: 1.249\tg_loss: 0.948\t(1628.82s - 956.61s remaining)\n",
            "EPOCH: 127.000\td_loss: 1.254\tg_loss: 0.933\t(1642.68s - 944.22s remaining)\n",
            "EPOCH: 128.000\td_loss: 1.251\tg_loss: 0.927\t(1656.09s - 931.55s remaining)\n",
            "EPOCH: 129.000\td_loss: 1.260\tg_loss: 0.922\t(1669.69s - 918.98s remaining)\n",
            "EPOCH: 130.000\td_loss: 1.262\tg_loss: 0.916\t(1683.25s - 906.36s remaining)\n",
            "EPOCH: 131.000\td_loss: 1.249\tg_loss: 0.941\t(1696.50s - 893.58s remaining)\n",
            "EPOCH: 132.000\td_loss: 1.254\tg_loss: 0.935\t(1710.02s - 880.92s remaining)\n",
            "EPOCH: 133.000\td_loss: 1.251\tg_loss: 0.941\t(1723.55s - 868.25s remaining)\n",
            "EPOCH: 134.000\td_loss: 1.245\tg_loss: 0.949\t(1737.01s - 855.54s remaining)\n",
            "EPOCH: 135.000\td_loss: 1.254\tg_loss: 0.927\t(1750.90s - 843.02s remaining)\n",
            "EPOCH: 136.000\td_loss: 1.257\tg_loss: 0.922\t(1764.25s - 830.23s remaining)\n",
            "EPOCH: 137.000\td_loss: 1.260\tg_loss: 0.919\t(1777.60s - 817.43s remaining)\n",
            "EPOCH: 138.000\td_loss: 1.264\tg_loss: 0.917\t(1791.03s - 804.67s remaining)\n",
            "EPOCH: 139.000\td_loss: 1.267\tg_loss: 0.909\t(1804.99s - 792.12s remaining)\n",
            "EPOCH: 140.000\td_loss: 1.268\tg_loss: 0.912\t(1819.06s - 779.60s remaining)\n",
            "EPOCH: 141.000\td_loss: 1.260\tg_loss: 0.928\t(1833.03s - 767.01s remaining)\n",
            "EPOCH: 142.000\td_loss: 1.262\tg_loss: 0.920\t(1847.04s - 754.42s remaining)\n",
            "EPOCH: 143.000\td_loss: 1.263\tg_loss: 0.925\t(1861.11s - 741.84s remaining)\n",
            "EPOCH: 144.000\td_loss: 1.262\tg_loss: 0.915\t(1874.95s - 729.15s remaining)\n",
            "EPOCH: 145.000\td_loss: 1.268\tg_loss: 0.903\t(1888.85s - 716.46s remaining)\n",
            "EPOCH: 146.000\td_loss: 1.270\tg_loss: 0.909\t(1902.87s - 703.80s remaining)\n",
            "EPOCH: 147.000\td_loss: 1.268\tg_loss: 0.907\t(1916.79s - 691.09s remaining)\n",
            "EPOCH: 148.000\td_loss: 1.268\tg_loss: 0.913\t(1930.89s - 678.42s remaining)\n",
            "EPOCH: 149.000\td_loss: 1.266\tg_loss: 0.903\t(1944.73s - 665.65s remaining)\n",
            "EPOCH: 150.000\td_loss: 1.268\tg_loss: 0.906\t(1959.24s - 653.08s remaining)\n",
            "EPOCH: 151.000\td_loss: 1.274\tg_loss: 0.905\t(1973.09s - 640.27s remaining)\n",
            "EPOCH: 152.000\td_loss: 1.273\tg_loss: 0.919\t(1987.13s - 627.52s remaining)\n",
            "EPOCH: 153.000\td_loss: 1.256\tg_loss: 0.937\t(2000.86s - 614.64s remaining)\n",
            "EPOCH: 154.000\td_loss: 1.270\tg_loss: 0.897\t(2015.12s - 601.92s remaining)\n",
            "EPOCH: 155.000\td_loss: 1.272\tg_loss: 0.894\t(2029.28s - 589.15s remaining)\n",
            "EPOCH: 156.000\td_loss: 1.265\tg_loss: 0.911\t(2043.64s - 576.41s remaining)\n",
            "EPOCH: 157.000\td_loss: 1.271\tg_loss: 0.895\t(2057.61s - 563.55s remaining)\n",
            "EPOCH: 158.000\td_loss: 1.276\tg_loss: 0.895\t(2072.00s - 550.79s remaining)\n",
            "EPOCH: 159.000\td_loss: 1.272\tg_loss: 0.906\t(2086.20s - 537.95s remaining)\n",
            "EPOCH: 160.000\td_loss: 1.272\tg_loss: 0.907\t(2100.51s - 525.13s remaining)\n",
            "EPOCH: 161.000\td_loss: 1.273\tg_loss: 0.904\t(2114.72s - 512.26s remaining)\n",
            "EPOCH: 162.000\td_loss: 1.266\tg_loss: 0.913\t(2129.18s - 499.44s remaining)\n",
            "EPOCH: 163.000\td_loss: 1.275\tg_loss: 0.887\t(2143.25s - 486.51s remaining)\n",
            "EPOCH: 164.000\td_loss: 1.271\tg_loss: 0.901\t(2157.50s - 473.60s remaining)\n",
            "EPOCH: 165.000\td_loss: 1.272\tg_loss: 0.918\t(2171.67s - 460.66s remaining)\n",
            "EPOCH: 166.000\td_loss: 1.269\tg_loss: 0.907\t(2186.02s - 447.74s remaining)\n",
            "EPOCH: 167.000\td_loss: 1.281\tg_loss: 0.888\t(2200.47s - 434.82s remaining)\n",
            "EPOCH: 168.000\td_loss: 1.273\tg_loss: 0.910\t(2214.70s - 421.85s remaining)\n",
            "EPOCH: 169.000\td_loss: 1.271\tg_loss: 0.901\t(2228.81s - 408.84s remaining)\n",
            "EPOCH: 170.000\td_loss: 1.275\tg_loss: 0.895\t(2242.68s - 395.77s remaining)\n",
            "EPOCH: 171.000\td_loss: 1.273\tg_loss: 0.898\t(2257.16s - 382.79s remaining)\n",
            "EPOCH: 172.000\td_loss: 1.270\tg_loss: 0.906\t(2271.58s - 369.79s remaining)\n",
            "EPOCH: 173.000\td_loss: 1.268\tg_loss: 0.904\t(2285.98s - 356.77s remaining)\n",
            "EPOCH: 174.000\td_loss: 1.273\tg_loss: 0.893\t(2300.40s - 343.74s remaining)\n",
            "EPOCH: 175.000\td_loss: 1.273\tg_loss: 0.894\t(2314.91s - 330.70s remaining)\n",
            "EPOCH: 176.000\td_loss: 1.269\tg_loss: 0.907\t(2329.32s - 317.63s remaining)\n",
            "EPOCH: 177.000\td_loss: 1.280\tg_loss: 0.889\t(2344.18s - 304.61s remaining)\n",
            "EPOCH: 178.000\td_loss: 1.272\tg_loss: 0.896\t(2358.27s - 291.47s remaining)\n",
            "EPOCH: 179.000\td_loss: 1.275\tg_loss: 0.894\t(2372.23s - 278.31s remaining)\n",
            "EPOCH: 180.000\td_loss: 1.272\tg_loss: 0.909\t(2386.40s - 265.16s remaining)\n",
            "EPOCH: 181.000\td_loss: 1.271\tg_loss: 0.897\t(2400.74s - 252.01s remaining)\n",
            "EPOCH: 182.000\td_loss: 1.278\tg_loss: 0.891\t(2414.91s - 238.84s remaining)\n",
            "EPOCH: 183.000\td_loss: 1.274\tg_loss: 0.899\t(2428.85s - 225.63s remaining)\n",
            "EPOCH: 184.000\td_loss: 1.270\tg_loss: 0.905\t(2442.80s - 212.42s remaining)\n",
            "EPOCH: 185.000\td_loss: 1.281\tg_loss: 0.884\t(2456.75s - 199.20s remaining)\n",
            "EPOCH: 186.000\td_loss: 1.282\tg_loss: 0.874\t(2471.23s - 186.01s remaining)\n",
            "EPOCH: 187.000\td_loss: 1.279\tg_loss: 0.892\t(2485.90s - 172.82s remaining)\n",
            "EPOCH: 188.000\td_loss: 1.282\tg_loss: 0.886\t(2500.06s - 159.58s remaining)\n",
            "EPOCH: 189.000\td_loss: 1.278\tg_loss: 0.889\t(2514.38s - 146.34s remaining)\n",
            "EPOCH: 190.000\td_loss: 1.276\tg_loss: 0.895\t(2528.89s - 133.10s remaining)\n",
            "EPOCH: 191.000\td_loss: 1.283\tg_loss: 0.887\t(2543.72s - 119.86s remaining)\n",
            "EPOCH: 192.000\td_loss: 1.277\tg_loss: 0.903\t(2558.13s - 106.59s remaining)\n",
            "EPOCH: 193.000\td_loss: 1.279\tg_loss: 0.881\t(2572.89s - 93.32s remaining)\n",
            "EPOCH: 194.000\td_loss: 1.282\tg_loss: 0.882\t(2587.38s - 80.02s remaining)\n",
            "EPOCH: 195.000\td_loss: 1.282\tg_loss: 0.887\t(2601.27s - 66.70s remaining)\n",
            "EPOCH: 196.000\td_loss: 1.275\tg_loss: 0.894\t(2615.26s - 53.37s remaining)\n",
            "EPOCH: 197.000\td_loss: 1.279\tg_loss: 0.885\t(2629.34s - 40.04s remaining)\n",
            "EPOCH: 198.000\td_loss: 1.281\tg_loss: 0.887\t(2643.65s - 26.70s remaining)\n",
            "EPOCH: 199.000\td_loss: 1.277\tg_loss: 0.909\t(2658.09s - 13.36s remaining)\n",
            "EPOCH: 199.996\td_loss: 1.246\tg_loss: 0.942\t(2672.44s - 0.06s remaining)"
          ],
          "name": "stdout"
        },
        {
          "output_type": "stream",
          "text": [
            "  0%|          | 0/200 [00:00<?, ?it/s]/usr/local/lib/python3.6/dist-packages/numpy/core/fromnumeric.py:3335: RuntimeWarning: Mean of empty slice.\n",
            "  out=out, **kwargs)\n",
            "/usr/local/lib/python3.6/dist-packages/numpy/core/_methods.py:161: RuntimeWarning: invalid value encountered in double_scalars\n",
            "  ret = ret.dtype.type(ret / rcount)\n",
            " 13%|█▎        | 26/200 [00:00<00:00, 253.49it/s]"
          ],
          "name": "stderr"
        },
        {
          "output_type": "stream",
          "text": [
            "\rEPOCH: 199.998\td_loss: 1.263\tg_loss: 0.876\t(2672.47s - 0.03s remaining)\rEPOCH: 200.000\td_loss: 1.256\tg_loss: 0.935\t(2672.49s - 0.00s remaining)\rEPOCH: 200.000\td_loss: 1.285\tg_loss: 0.884\t(2672.52s - 0.00s remaining)\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "stream",
          "text": [
            "100%|██████████| 200/200 [00:03<00:00, 62.85it/s]\n"
          ],
          "name": "stderr"
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 576x432 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "dTCkHHYeuLs4",
        "outputId": "967331a3-5a0e-48b9-aa28-0fc2c132b4e6",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 303
        }
      },
      "source": [
        "z = torch.randn(64, 100).to(device)\n",
        "sample_images = generator(z).data.cpu().view(64, 1, 28, 28)\n",
        "grid = make_grid(sample_images, nrow=8, normalize=True)\n",
        "show(grid.cpu().detach().permute(1,2,0), sz=5)"
      ],
      "execution_count": null,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 360x360 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "_gc_mUqG94js"
      },
      "source": [
        ""
      ],
      "execution_count": null,
      "outputs": []
    }
  ]
}